From cdb2fcb554500d13d147c17b7126c556f87014ae Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 17 Jan 2018 19:47:45 -0500 Subject: [PATCH] gdkgears: add a way to remove gears This is needed to test the GL resource cleanup code paths. --- tests/gdkgears.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/tests/gdkgears.c b/tests/gdkgears.c index 65c4f12fb1..56b5076b13 100644 --- a/tests/gdkgears.c +++ b/tests/gdkgears.c @@ -96,6 +96,17 @@ moar_gears (GtkButton *button, gpointer data) gtk_widget_show (gears); } +static void +less_gears (GtkButton *button, gpointer data) +{ + GtkContainer *container = GTK_CONTAINER (data); + GtkWidget *gears; + + gears = gtk_widget_get_last_child (GTK_WIDGET (container)); + if (gears) + gtk_widget_destroy (gears); +} + int main (int argc, char *argv[]) { @@ -213,11 +224,15 @@ main (int argc, char *argv[]) gtk_widget_show (bbox); button = gtk_button_new_with_label ("Moar gears!"); - gtk_widget_set_hexpand (button, TRUE); gtk_container_add (GTK_CONTAINER (bbox), button); g_signal_connect (button, "clicked", G_CALLBACK (moar_gears), extra_hbox); gtk_widget_show (button); + button = gtk_button_new_with_label ("Less gears!"); + gtk_container_add (GTK_CONTAINER (bbox), button); + g_signal_connect (button, "clicked", G_CALLBACK (less_gears), extra_hbox); + gtk_widget_show (button); + button = gtk_button_new_with_label ("Quit"); gtk_widget_set_hexpand (button, TRUE); gtk_container_add (GTK_CONTAINER (bbox), button); -- 2.30.2